state management techniques in mvc